﻿<%@ Page Language="C#" Inherits="System.Web.Mvc.ViewPage" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Documentation</title>
    </head>
<body>
    <div>
        <img src="../../Content/images/azurelogo.png" /><img height="60" src="../../Content/images/facebook-logo.png" />
        <h2>Facebook Azure Toolkit</h2>
    <div style="width:600px;">
    <p>
         Welcome to the Facebook Azure Toolit. Facebook apps hosted in Azure provide
        a flexible and scalable hosting platform for the smallest and largest of Facebook applications. Whether you have millions of users or just a few thousand,
        the Facebook Azure Toolit helps you to build your app correctly so that if your app is virally successful, you won't have to architect it again.  You will just
        need to increase the number of instances you are using, then you are done scaling. :)
    </p>
    <h3>What does this Toolit include?</h3>
    <ul>
        <li>Facebook Developers Toolkit (<a href="http://www.codeplex.com/FacebookToolkit">here</a>)</li>
        <li>Ninject 2.0 for Dependency Injection (<a href="http://ninject.org/">here</a>)</li>
        <li>Asp.Net MVC 2 (<a 
                href="http://www.microsoft.com/downloads/details.aspx?FamilyID=7aba081a-19b9-44c4-a247-3882c8f749e3&amp;displaylang=en">here</a>)</li>
        <li>Scalable Archetecture built in</li>
        <li>Simplified library for accessing Message Queues, Table Storage and Sql Server</li>
        <li>Automated build scripts for one-click deployment from TFS 2010 to Azure</li>
    </ul>

    <h3>How do I get started?</h3>
    <ul>
        <li>Set up a facebook developers account (<a 
                href="http://www.facebook.com/developers">here</a>)</li>
        <li>Set up a iframe facebook application (<a 
                href="http://msdn.microsoft.com/en-us/windows/ee695841.aspx">here</a>)</li>
        <li>Set up an Azure Account (<a 
                href="http://www.microsoft.com/windowsazure/getstarted/">here</a>)</li>
        <li>Set up a database in Sql Azure (<a 
                href="http://www.microsoft.com/windowsazure/sqlazure/">here</a>)</li>
        <li>Set up a storage account in Azure for Table Storage, Message Queues and Blob Storage</li>
    </ul>

    <h3>Set up app locally</h3>
    <ul>
        <li>Create local database using the dbscript.sql found in the AzureFacebook.Data.Sql project</li>
        <li>Change connection strings in the app.config in AzureFacebook.WorkerRole.csproj and AzureFacebook.Data.Sql.csproj</li>
        <li>Set up facebook app and have callback url point to http://localhost:81/  127.0.0.1 will not be accepted in facebook.</li>
        <li>Open up the web.config and modify the following keys in the appSettings to match what is in your facebook app: APIKey, Secret, Callback, Suffix, and AppUrl</li>
    </ul>

    <h3>Setting up Deployment in TFS 2010</h3>
    <ul>
        <li>Add a server ssl certificate to your account in Azure (<a 
                href="http://msdn.microsoft.com/en-us/library/ee460782.aspx">here</a>)</li>
        <li>Check azure cmdlets and documentation of powershell scripts (<a 
                href="http://code.msdn.microsoft.com/azurecmdlets">here</a>)</li>
        <li>Modify the TFSBuild.proj file to include your path for where your builds are 
            released on your server.</li>
    </ul>

    <h3>Setting up Deployment Locally</h3>
    <ul>
        <li>Add an ssl certificate to your account in Azure (<a 
                href="http://msdn.microsoft.com/en-us/library/ee460782.aspx">here</a>)</li>
        <li>Check azure cmdlets and documentation of powershell scripts (<a 
                href="http://code.msdn.microsoft.com/azurecmdlets">here</a>)</li>
        <li>Modify the TFSBuild.proj file to include your path for where your builds are 
            released on your local machine.</li>
    </ul>

    </div>
    </div>
</body>
</html>
